Skip to content

* TODO.md audited against the tree - #10

Merged
Hawkynt merged 2 commits into
mainfrom
docs/todo-audit
Sep 2, 2026
Merged

* TODO.md audited against the tree#10
Hawkynt merged 2 commits into
mainfrom
docs/todo-audit

Conversation

@Hawkynt

@Hawkynt Hawkynt commented Sep 2, 2026

Copy link
Copy Markdown
Owner

A year of work landed without the checklist moving. Every box re-verified against sources, workflows and tests.

  • 28 items ticked that were already shipped: drag & drop, live target-path preview, batch rename, search/filters, metadata caches, cancellation tokens, the full duplicate-detection tier, benchmarks, headless UI tests, cross-platform CI matrix, coverage, release + NuGet automation, API/architecture/developer docs, video support, face recognition, geo mapping, AI auto-tagging, CLI --verbose.
  • 2 ticks removed as unfounded: there is no integration-test tier (only Unit/), and nothing exercises ImportManager.ProcessDirectoryAsync, so the end-to-end import workflow test does not exist.
  • Partial items stay open and now name what is missing: ImportSettings.MaxParallelism has no consumer (import is still serial), progress has no ETA, undo/redo is develop-history + mask only, the library grid has no thumbnail view, date-source priorities are hardcoded.
  • Renamed reality: PhotoMetadata shipped as FullMetadata, IMetadataExtractor as IMetadataReader; both noted rather than silently accepted.
  • UI section retitled Avalonia (was WinForms); the Settings-dialog and settings-persistence notes now match SettingsWindow/SettingsService; CLI gains its metadata/faces/regions/models subcommands and --preserve/--duplicates.
  • Short dated summary of what landed since 2025-09-10 added at the top.

Markdown only, no code touched.

Noticed, not touched: README's "Planned Features" list is stale the same way — the healing brush, crash-safe write-back queue, thumbnail pre-cache and ONNX sky mask it lists as planned are all shipped.

…ded ticks removed

- checkboxes re-verified one by one against sources, workflows and tests
  instead of the 2025-09 snapshot
- newly true: drag & drop, live target-path preview, batch rename, search
  and filters, metadata caches, cancellation, duplicate detection tier,
  benchmarks, headless UI tests, cross-platform CI matrix, coverage,
  release + NuGet automation, API/architecture/developer docs, video,
  faces, geo mapping, AI auto-tagging, CLI --verbose
- no longer true: the integration-test tier and the end-to-end import
  workflow test do not exist (only Unit/ plus temp-dir file I/O)
- partial items keep their box open and now name what is missing
  (MaxParallelism has no consumer, no ETA in progress, no global undo,
  no library thumbnail grid, hardcoded date-source priorities)
- UI section retitled Avalonia; Settings dialog and settings persistence
  notes match SettingsWindow/SettingsService; CLI gains its metadata,
  faces, regions and models subcommands plus --preserve/--duplicates
- dated summary of what landed since 2025-09-10 added at the top
The sky segmenter, healing brush, write-back queue and thumbnail pre-cache all
exist in Core, so listing them as planned understated the project. The sun/moon
item stays open because only the calculator and the arrow data landed - no map
view consumes them - and photometric modelling has not been started.

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: ad88a34cc7

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

Comment thread TODO.md
- **Geo**: reverse geocoding, elevation, geofences, KML export, triangulation, photo resection, sun/moon calculations, GPX geotagging, world map, map bookmarks.
- **Compositing**: HDR merge, cylindrical/spherical/tripod panorama stitching, scanned-piece stitching, video frame extraction.
- **Library tooling**: duplicates, burst stacks, smart albums, keyword hierarchy, memories, quality flagging, batch rename, batch date shift, search with saved filters, calendar, slideshow, compare grid.
- **Metadata write path**: XMP sidecars, JPEG/PNG/TIFF/WebP container writers, atomic writes, crash-safe write-back queue.

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P2 Badge Qualify the write-back queue as not yet integrated

When a UI or CLI metadata write is interrupted by a crash, no pending edit can be recovered: repository-wide production references show that WriteBackQueue is never constructed, started, or enqueued, while the edit paths instantiate CompositeMetadataWriter directly; WriteQueueDialog merely accepts a queue instance and is itself never opened. Calling the crash-safe queue “landed” therefore overstates the reliability users receive and hides the remaining integration work.

Useful? React with 👍 / 👎.

Comment thread TODO.md
- [ ] Web interface
- [ ] Mobile app companion
- [ ] AI-powered auto-tagging
- [x] AI-powered auto-tagging (CLIP encoders + `AutoKeywordTagger` + auto-keyword scan window)

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P2 Badge Keep AI auto-tagging open until tokenization is wired

For the normal auto-keyword UI flow, AutoKeywordScanWindow constructs OnnxClipTextEncoder without supplying a tokenizer, so it uses WhitespaceByteTokenizer; that class explicitly states it is only a test placeholder and that a real SigLIP model requires a matching SentencePiece tokenizer. Consequently, downloading the registered SigLIP models can produce failed or meaningless text embeddings rather than useful tags, so this user-facing feature should not be marked complete yet.

Useful? React with 👍 / 👎.

@Hawkynt
Hawkynt merged commit e6fc3b2 into main Sep 2, 2026
6 checks passed
@Hawkynt
Hawkynt deleted the docs/todo-audit branch September 2, 2026 12:29
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant